package org.an.proj.contacts.ui.test;

import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.util.Log;
import org.an.ku.util.ToastUtil;
import org.an.proj.contacts.ui.base.BaseActivity;

import static android.Manifest.permission.READ_CONTACTS;

public class FullScreenVideoActivity extends BaseActivity {
  @Override protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mayRequestContacts();
  }

  @Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,
      @NonNull int[] grantResults) {
    super.onRequestPermissionsResult(requestCode, permissions, grantResults);
    Log.i("wxl","requestCode="+requestCode);
  }

  private void mayRequestContacts() {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
      switch (checkSelfPermission(READ_CONTACTS)) {
        case PackageManager.PERMISSION_GRANTED:
          // 已有授权
          Log.i("wxl", "已有授权");
          break;
        case PackageManager.PERMISSION_DENIED:
          // 没有权限：尚未请求过权限，
          // 或者请求授权被拒绝，
          // 或者曾经授权过，但被用户在设置中禁用权限
          Log.i("wxl", "没有权限：尚未请求过权限，或者请求授权被拒绝，" + "或者曾经授权过， 但被用户在设置中禁用权限");
          /**
           * 如果用户勾上了“不再询问”，这时候就不应弹请求权限的对话框，
           * 可以在请求权限之前用
           * shouldShowRequestPermissionRationale判断用户是否拒绝过，
           * 如果返回true，表示用户拒绝过。
           */
          Log.i("wxl",
              "shouldShowRequestPermissionRationale==" + shouldShowRequestPermissionRationale(
                  READ_CONTACTS));
          if (shouldShowRequestPermissionRationale(READ_CONTACTS)) {
            ToastUtil.toast(mContext,"请允许读取权限");
            requestPermissions(new String[] { READ_CONTACTS }, 1);

            //Snackbar.make(mEmailView, R.string.permission_rationale, Snackbar.LENGTH_INDEFINITE)
            //    .setAction(android.R.string.ok, new View.OnClickListener() {
            //      @Override @TargetApi(Build.VERSION_CODES.M) public void onClick(View v) {
            //        requestPermissions(new String[] { READ_CONTACTS }, 1);
            //      }
            //    })
            //    .show();
          } else {
            requestPermissions(new String[] { READ_CONTACTS }, 1);
          }
          break;
        default:
          break;
      }
    }
  }
}
